home *** CD-ROM | disk | FTP | other *** search
/ Cream of the Crop 22 / Cream of the Crop 22.iso / program / eflibpt4.zip / DEMO / ADVANCED / RECONSTR.PAS < prev    next >
Pascal/Delphi Source File  |  1996-08-16  |  1KB  |  54 lines

  1. { Borland Pascal Extended Function Library - EFLIB (C) Johan Larsson, 1996
  2.   Demonstration; reconstruction of a linked list object
  3.  
  4.   EFLIB IS PROTECTED BY THE COPYRIGHT LAW AND MAY NOT BE COPIED, SOLD OR
  5.   MANIPULATED. FOR MORE INFORMATION, SEE PROGRAM MANUAL! THIS DEMONSTRAT-
  6.   ION PROGRAM MAY FREELY BE USED AND DISTRIBUTED.                          }
  7.  
  8.  
  9. uses EFLIBDEF, EFLIBINI, EFLIBDAT;
  10.  
  11. type tMyList = object (LinkedListObjectType)
  12.        constructor Initialize;
  13.        procedure Store (Text : string);
  14.        procedure DoMyTask;
  15.      end;
  16.  
  17.  
  18. constructor tMyList.Initialize;
  19. begin
  20.      { Initiailize doubly linked list based on text strings }
  21.      Inherited Initialize (SizeOf(String));
  22. end;
  23.  
  24. procedure tMyList.Store (Text : string);
  25. begin
  26.      Add (Text); { Add string }
  27. end;
  28.  
  29. { Do some task to perform }
  30. procedure tMyList.DoMyTask;
  31. var Index : word;
  32. begin
  33.      if IsEmpty then WriteLn ('I am empty.') else WriteLn ('I contain something.');
  34.      for Index := 1 to Elements do
  35.          Write (String(ElementPointer(Index)^), ' ');
  36.      WriteLn;
  37. end;
  38.  
  39.  
  40. var MyList : tMyList;
  41.  
  42. begin
  43.      with MyList do begin
  44.           Initialize;
  45.  
  46.           Store ('The object oriented approach');
  47.           Store ('to data structures will make');
  48.           Store ('life easier.');
  49.  
  50.           DoMyTask;
  51.           Intercept;
  52.      end;
  53. end.
  54.